#ifndef __TM1628_H
#define __TM1628_H

#include "stm32f10x.h"
#include <stdio.h>

#define Tm1628_STB_H GPIO_WriteBit(GPIOB,GPIO_Pin_13,Bit_SET)
#define Tm1628_STB_L GPIO_WriteBit(GPIOB,GPIO_Pin_13,Bit_RESET)

#define Tm1628_CKL_H GPIO_WriteBit(GPIOB,GPIO_Pin_14,Bit_SET)
#define Tm1628_CKL_L GPIO_WriteBit(GPIOB,GPIO_Pin_14,Bit_RESET)

#define Tm1628_DIO_H GPIO_WriteBit(GPIOB,GPIO_Pin_15,Bit_SET)
#define Tm1628_DIO_L GPIO_WriteBit(GPIOB,GPIO_Pin_15,Bit_RESET)
#define TM1628_SHOW_CLEAR   0x00

#define GrayScale_OFF 0x80 //关显示
#define GrayScale_ON 0x81 //开显示

#define GrayScale1   0x88 //灰度等级1
#define GrayScale2   0x89 //灰度等级2
#define GrayScale3   0x8A //灰度等级3
#define GrayScale4   0x8B //灰度等级4
#define GrayScale5   0x8C //灰度等级5
#define GrayScale6   0x8D //灰度等级6
#define GrayScale7   0x8E //灰度等级7
#define GrayScale8   0x8F //灰度等级8


void Tm1628init(void);   //TM1628初始化
void Tm1628_Fixed(uint8_t data, uint8_t add);	//固定写显示 data 地址 add	数据
void Tm1628_Continuous(uint8_t data, uint8_t num, uint8_t *add);	//连续写显示
void Tm1628_ClearDisplay(void);	//清屏
void Tm1628_GrayScale(uint8_t data);	//亮度调节
void Tm1628_Write_Command(u8 unm);
void show_num(uint32_t num);
void show_arrow(void);
void Tm1628_Clear_Arrow_Display(void);
void show_line_noorder(void);
#endif
